package sliver.dao;

import java.io.Serializable;
import java.util.List;

public interface BaseDao<T> {
	
	public T findById(Serializable id, Class<T> entityClass);
	
	public List<T> findAll(Class<T> entityClass);
	
	public T deleteById(Serializable id, Class<T> entityClass);
	
	public T update(T entity);
	
	public Serializable insert(T entity);
	
	public List<T> complexQuery(String queryString, Object[] params);
	
	public List<Object> complexQueryFields(String queryString, Object[] params);
}
